As the proliferation of mobile computing increases at an exponential pace, the demand for fast and reliable data connectivity for mobile computing devices in a variety of different network environments grows at an equivalent fast pace. To cater to the demands of mobile users, most mobile devices today are equipped with multiple and heterogeneous wireless interfaces. For example, it is now commonplace for a laptop to be equipped with WiFi, Bluetooth, and 2.5G/3G wireless interfaces. Similarly, popular mobile phones today ranging from the iPhone to the Google Android phone to the Blackberry can come equipped with multiple wireless data interfaces.
The expansion in the number of wireless interfaces available on a mobile computing device has brought about conventional attempts to improve the use of those multiple wireless interfaces. Conventional architectures have used the “one-interface at a time” approach or the “simultaneous use of multiple interfaces” approach. As wireless interfaces are innately limited and heterogeneous in capabilities, it may be possible to improve overall data connectivity through the simultaneous use of multiple interfaces.
The majority of conventional systems addressing this issue implement bandwidth aggregation. In other words, if there are two interfaces I1 and I2 available with respective bandwidths of B1 and B2, the conventional systems focus on delivering the aggregate bandwidth of B1+B2 to the user. This configuration is often referred to as simple aggregation. Unfortunately conventional systems using simple aggregation typically do not result in meaningful benefits to the user. Consider, for example, a mobile phone that supports both 3G and Wi-Fi data interfaces. 3G data rates support bandwidths of up to 100-500 Kbps while Wi-Fi interfaces support 2-54 Mbps. A simple aggregation of the bandwidths provided by the two interfaces will provide negligible improvement in terms of performance perceived by the user, with respect to a best-available-interface solution.
Therefore, it would be advantageous to provide an apparatus and method for intelligently aggregating multiple wireless interfaces to improve overall throughput rate.
Additionally, it would be advantageous to provide an apparatus and method to provide a system that could dynamically adjust the wireless interface aggregation based on the conditions of the network and the data being transmitted.
Additionally, it would be advantageous to provide an improved system and method for providing a wireless interface aggregation system that could be implemented entirely in the user device so as to be compatible in all networks.